package com.bingxue.edu.framework.common.constant;

import cn.hutool.core.text.StrPool;

/**
 * 缓存相关常量
 * @author panbo
 * @since 2024/6/28
 */
public class CacheConstants {

    /**
     * 分隔符
     */
    public static final String DELIMITER = StrPool.COLON;

    /**
     * 登录用户键
     */
    public static final String LOGIN_USER_KEY = "LOGIN_USER";

    /**
     * 验证码键前缀
     */
    public static final String CAPTCHA_KEY_PREFIX = "CAPTCHA" + DELIMITER;

    /**
     * 限流键前缀
     */
    public static final String LIMIT_KEY_PREFIX = "LIMIT" + DELIMITER;

    /**
     * 用户缓存键前缀
     */
    public static final String USER_KEY_PREFIX = "USER" + DELIMITER;

    /**
     * 菜单缓存键前缀
     */
    public static final String MENU_KEY_PREFIX = "MENU" + DELIMITER;

    /**
     * 参数缓存键前缀
     */
    public static final String OPTION_KEY_PREFIX = "OPTION" + DELIMITER;

    /**
     * 仪表盘缓存键前缀
     */
    public static final String DASHBOARD_KEY_PREFIX = "DASHBOARD" + DELIMITER;

    /**
     * 用户密码错误次数缓存键前缀
     */
    public static final String USER_PASSWORD_ERROR_KEY_PREFIX = USER_KEY_PREFIX + "PASSWORD_ERROR" + DELIMITER;

    /**
     * 数据导入临时会话key
     */
    public static final String DATA_IMPORT_KEY = "SYSTEM" + DELIMITER + "DATA_IMPORT" + DELIMITER;

    /**
     *
     */
    public static final String JUST_AUTH_CACHE = "JUSTAUTH" + DELIMITER + "STATE:" + DELIMITER;

    /**
     * 订单完成支付锁key
     */
    public static final String ORDER_PAY_LOCK_KEY = "ORDER" + DELIMITER + "PAY" + DELIMITER;
    public static final String ORDER_COMPLETE_LOCK_KEY = "ORDER" + DELIMITER + "COMPLETE" + DELIMITER;
    public static final String ORDER_REFUND_LOCK_KEY = "ORDER" + DELIMITER + "REFUND" + DELIMITER;

    private CacheConstants() {
    }
}
